package com.arpa.ntocc.common.domain.dto;

import com.arpa.ntocc.common.common.cache.PartyGroupCacheDO;
import com.arpa.ntocc.common.domain.entity.Party;
import com.arpa.ntocc.common.domain.entity.Shipment;
import com.arpa.ntocc.common.domain.vo.ResourceVueVO;
import com.arpa.ntocc.common.domain.vo.RoleVO;
import lombok.Data;

import java.io.Serializable;
import java.sql.Driver;
import java.util.List;
import java.util.Map;

/**
 * 用户信息对象
 * @Author liuyj
 * @Date 2019-11-14 08:40:58
 */
@Data
public class UserInfoDTO implements Serializable {

    public static final String AUTHORIZE_DATA_CODE_KEY = "authorizeDataCode";
    public static final String AUTHORIZE_DATA_TYPE_KEY = "dataType";
    public static final String AUTHORIZE_DATA_KEY = "data";
    public static final String AUTHORIZE_WAREHOUSE_CODES = "WarehouseAuthorization";
    public static final String AUTHORIZE_SHIPMENT_CODES = "ShipmentAuthorization";

    /**
     * 用户信息
     */
    private Party party;
    /**
     * 角色信息
     */
    private List<RoleVO> roleList;
    /**
     * 资源信息
     */
    private List<ResourceVueVO> resourceList;
    /**
     * 权限信息
     */
    private List<String> permissionlist;
    /**
     * 司机信息
     */
    private Driver driver;
    /**
     * 货主信息
     */
    private Shipment shipment;


    /**
     * 机构信息
     */
    private PartyGroupCacheDO branch;

    /**
     * 登录选择的仓库标识、货主标识
     * key:authorizeDataCode、dateType、data
     */
    private Map<String,Object> authorizeData;

    List<Map<String,Object>> warehouseList;

    List<Map<String, Object>> shipmentList;

    List<String> warehouseCodeList;
    List<String> shipmentCodeList;
}
